home *** CD-ROM | disk | FTP | other *** search
- ; $VER: BoulderDäsh.install 4.20 (08.04.98)
- ; Install script for BoulderDäsh (Workbench 2.0 or higher)
- ;
- (COMPLETE 0)
- ;(USER 2)
- ;(DEBUG)
- (SET #ApplicationName "BoulderDäsh")
- (SET #ApplicationDir "sys:")
- (SET #ApplicationDir1 "work:")
- (SET #ApplicationDir2 "games:")
- (SET #ApplicationDir3 "game:")
- (SET #ApplicationDir4 "work:games")
- (SET #ArchiveDir "/")
- (SET #Language -1)
- (SET #Documents -1)
- (SET #ApplicationKeyfile (CAT #ApplicationName ".key"))
-
- ;=============================================================================
- ; German strings
-
- (IF (= @language "deutsch")
- (
- (SET default_lang 2)
-
- (SET #bad-kick "Sie benötigen Workbench 2.0 oder größer")
- (SET #bad-installer
- (CAT "Achtung! Es ist eine alte Version des Programmes 'Installer' "
- "auf Ihrem Amiga!\n\nDie Installation benötigt mindestens Installer 42.9.\n\n"
- "Bitte überprüfen Sie Ihre Konfiguration!\n"
- ))
-
- (SET #App-InstallMsg
- (CAT "\n%s Installationsskript.\n\n"
- "Dieses Skript installiert oder deinstalliert\n"
- "%s auf Ihrem Amiga.\n\n"
- "Lesen Sie die Anleitungsdatei für weitere Informationen\n"
- " über den Vertrieb von %s.\n\n"
- "%s © 1995-98 Guido Mersmann\n"
- "Alle Rechte reserviert."
- ))
- (SET #App-MainMode "Wählen Sie den gewüschten Vorgang!")
-
- (SET #App-Where
- (CAT "Wo möchten Sie %s installieren ?\n"
- "(Ein Verzeichnis wird angelegt)"
- ))
-
- (SET #App-Update
- (CAT "\nEin %s-Verzeichnis existiert im ausgewählen"
- " Verzeichnis.\n\n Wenn Sie fortfahren,"
- " bestätigen Sie, daß Sie die alte %s-Installation"
- " mit der neuesten Version überschreiben wollen.\n\n"
- "Verschiedene %s-Dateien (z.B überflüssige Dateien) werden falls nötig überschrieben!"
- ))
-
- (SET #App-Main "Welche Version von %s möchten Sie installieren?")
- (SET #App-Main-help
- (CAT "Die OS2.0+ Version läuft unter allen Systemen ab OS2.0."
- " Die OS2.1+ Version hat den Nutzen, daß sie weniger Resourcen"
- " benutzt, wenn sich %s im Hintergrund befindet. Dazu MUß"
- " die Locale.library eingebunden sein. Für die OS3.0+ gilt das selbe"
- " wie für die OS2.1 Verison. Es werden OS3.0+ Routinen benutzt, die"
- " weiteren Speicher sparen."
- ))
-
- (SET #App-Language "Welche Sprachen sollen installiert werden ?")
-
- (SET #App-Language-help
- (CAT "\nDer Amiga kann in vielen verschiedenen Sprachen"
- " arbeiten. Um Plattenkapazität zu sparen können Sie"
- " nur die Sprachen anwählen, die sie benötigen"
- " Haken Sie also einfach die Sprachen ab, die Sie"
- " Ihrem System zugänglich machen wollen."
- @askoptions-help
- ))
-
- (SET #App-Docs "Welche Anleitungs- und Informationsdateien wollen Sie installieren ?")
-
- (SET #startup-prompt "\n\nJetzt werden für %s folgende Eintragungen in die S:User-Startup gemacht:\n\n%s")
-
- (SET #App-Exit "\n\n%s installiert!!\n\nSie finden %s im Verzeichnis \"%s\"")
- ;------- DEINSTALL STRINGS
- (SET #App-DeinstallWhere "Wo liegt %s auf Ihrer Platte ?\n")
- (SET #App-Install "%s Installieren")
- (SET #App-DeInstall "%s Deinstallieren")
- (SET #bad-DeInstall "Es gibt keine %s Installation an der angegeben Position")
- (SET #StartupRemove-prompt "\n\nDie zu %s gehörenden Einträge in der User-startup werden gelöscht!")))
- (SET #Deinstall-Done "\n%s ist jetzt deinstalliert!")
- ;=============================================================================
- ; English strings
-
- (IF (<> @language "deutsch")
- (
- (SET default_lang 4)
-
- (SET #bad-kick "You must have at least Workbench 2.0+")
- (SET #bad-installer
- (CAT "You have an old version of the program 'Installer' "
- "on your Amiga!\n\nThe installation procedure needs at least Installer 42.9.\n\n"
- "Please check your configuration!\n"
- ))
-
- (SET #App-InstallMsg
- (CAT "\n\n%s Installation Script.\n\n"
- "This script installs %s on your Amiga.\n\n"
- "Read the guide file for more information\n"
- " on the distribution of %s.\n\n"
- "%s © 1995-98 Guido Mersmann\n"
- "All rights reserved."
- ))
- (SET #App-MainMode "Please choose mode:")
-
- (SET #App-Where
- (CAT "Where would you like to install %s ?\n"
- "(A drawer will be created)"
- ))
-
- (SET #App-Update
- (CAT "\n\nA %s drawer does already exist in the selected "
- " directory.\n\n By selecting \"Proceed\", you"
- " indicate that you want to update the %s"
- " installation with the most recent version.\n\n"
- "Several %s specific files will be overwritten!"
- ))
-
- (SET #App-Main "Which %s version should be installed ?")
- (SET #App-Main-help
- (CAT "The OS2.0+ version should only be used on Systems with OS2."
- " The OS2.1+ and the OS3.0+ version need less Memory. Locale is required!"
- " Special OS3.0+ functions are used to save more memory."
- ))
-
- (SET #App-Language "Which languages should be installed ?")
- (SET #App-Language-help
- (CAT "\nThe Amiga can be operated in many different"
- " languages."
- "To reduce the amount of space consumed by the"
- " language files, you can select to have only the"
- " files of specific languages copied.\n\n"
- "Simply check the boxes of the languages you wish"
- " to have available on your system.\n\n"
- @askoptions-help
- ))
-
- (SET #App-Docs "Which Amiga-guide files should be installed ?")
-
- (SET #startup-prompt "\n\nSome lines need to be added to S:User-Startup for %s\n\n%s")
-
- (SET #App-Exit "\n\n%s installed !!\n\n%s can be found in your \"%s\" drawer (or partiton).")
- ;--------- DEINSTALLATION STRINGS
- (SET #App-DeInstallWhere "Where is the location of %s ?\n")
- (SET #App-Install "Install")
- (SET #App-DeInstall "Deinstall")
- (SET #bad-DeInstall "There is no %s installation at the specified position!")
- (SET #StartupRemove-prompt "\nRemove %s lines within your user-startup?")
- (SET #Deinstall-Done "\n%s is now deinstalled.")
- ;---------
- ))
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_Requirements
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_Requirements
- ; Workbench 37 or better required
- (IF (< (/ (getversion) 65536) 37)
- (
- (abort #bad-kick)
- )
- )
- ; Installer 42.9 or better required
- (if (< @installer-version 2752521)
- (
- (abort #bad-installer)
- )
- ) ;if
- ) ;PROCDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_DeInstall
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_DeInstall #InstallerMode
-
- (SET #Dummy (ASKCHOICE
- (PROMPT #App-MainMode)
- (HELP @askchoice-help)
- (CHOICES
- (#App-Install #ApplicationName)
- (#App-Deinstall #ApplicationName)
- )
- ;(DEFAULT #Documents)
- )
- )
- ) ;PROCDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; GetApplicationDir
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_GetApplicationDir #Dummy
- (SET #Dummy #ApplicationDir)
- (if (= (exists (TACKON #ApplicationDir1 #ApplicationName) (NOREQ)) 2) (SET #Dummy #ApplicationDir1))
- (if (= (exists (TACKON #ApplicationDir2 #ApplicationName) (NOREQ)) 2) (SET #Dummy #ApplicationDir2))
- (if (= (exists (TACKON #ApplicationDir3 #ApplicationName) (NOREQ)) 2) (SET #Dummy #ApplicationDir3))
- (if (= (exists (TACKON #ApplicationDir4 #ApplicationName) (NOREQ)) 2) (SET #Dummy #ApplicationDir4))
-
- (SET #ApplicationDir
- (TACKON
- (ASKDIR
- (PROMPT (#App-Where #ApplicationName))
- (HELP @askdir-help)
- (Default #Dummy)
- )
- #ApplicationName
- )
- )
- (SET @default-dest #ApplicationDir)
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; GetDeinstallDir
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_GetDeInstallDir
- (SET #Dummy #ApplicationDir)
- (if (= (exists (TACKON #ApplicationDir1 #ApplicationName) (NOREQ)) 2) (SET #Dummy #ApplicationDir1))
- (if (= (exists (TACKON #ApplicationDir2 #ApplicationName) (NOREQ)) 2) (SET #Dummy #ApplicationDir2))
- (if (= (exists (TACKON #ApplicationDir3 #ApplicationName) (NOREQ)) 2) (SET #Dummy #ApplicationDir3))
- (if (= (exists (TACKON #ApplicationDir4 #ApplicationName) (NOREQ)) 2) (SET #Dummy #ApplicationDir4))
-
- (SET #ApplicationDir
- (ASKDIR
- (PROMPT (#App-DeInstallWhere #ApplicationName))
- (HELP @askdir-help)
- (default #Dummy)
- )
- )
- (SET #Dummy (EXISTS (TACKON #Applicationdir #ApplicationName)))
-
- (Select #Dummy
- (abort (#bad-DeInstall #ApplicationName))
- (SET #Applicationdir #Applicationdir)
- (SET #Applicationdir (TACKON #Applicationdir #ApplicationName))
- ) ;Select
- (SET @default-dest #ApplicationDir)
-
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; Ask for Catalogs
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_AskCatalogs #Language
-
- (SET #Dummy (ASKOPTIONS
- (PROMPT #App-Language)
- (HELP #App-Language-help)
- (CHOICES
- "English"
- "Deutsch"
- "Français")
- (DEFAULT #Language)
- )
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; Copy Selected Catalogs
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_CopyCatalogs #Language
- (SET n 0)
- (SET #DestinationRoot (TACKON #ApplicationDir "Catalogs"))
- (SET #SourceRoot (TACKON #ArchiveDir "Catalogs"))
- (MAKEDIR #DestinationRoot)
-
- (while (< n 3)
- (SET #Dummy (SELECT n "english" "deutsch" "français"))
- (
- (IF (IN #Language n)
- (
- (MAKEDIR (TACKON #DestinationRoot #Dummy))
- (COPYFILES
- (SOURCE (TACKON #SourceRoot #Dummy))
- (DEST (TACKON #DestinationRoot #Dummy))
- (HELP @copyfiles-help)
- (ALL)
- )
- )
- )
- )
- (SET n (+ n 1))
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; Ask for docs
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_AskDocs #Documents
- (SET #Dummy (ASKOPTIONS
- (PROMPT #App-Docs)
- (HELP @askoptions-help)
- (CHOICES
- "english"
- "deutsch"
- )
- (DEFAULT #Documents)
- )
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; Copy docs
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_CopyDocs #Documents
- (SET n 0)
- (SET #DestinationRoot (TACKON #ApplicationDir "Docs"))
- (SET #SourceRoot (TACKON #ArchiveDir "Docs"))
- (MAKEDIR #DestinationRoot)
-
- (while (< n 2)
- (SET #Dummy (SELECT n
- "english"
- "deutsch"
- )
- )
- (
- (IF (IN #Documents n)
- (
- (MAKEDIR (TACKON #DestinationRoot #Dummy))
- (COPYFILES
- (SOURCE (TACKON #SourceRoot #Dummy))
- (DEST (TACKON #DestinationRoot #Dummy))
- (HELP @copyfiles-help)
- (INFOS)
- (ALL)
- )
- )
- )
- )
- (SET n (+ n 1))
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; Copy_Dir (Dir)
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_CopyDir #Dummy
-
- (SET #DestinationRoot (TACKON #ApplicationDir #Dummy))
- (SET #SourceRoot (TACKON #ArchiveDir #Dummy))
- (MAKEDIR #DestinationRoot)
-
- (COPYFILES
- (SOURCE #SourceRoot)
- (DEST #DestinationRoot)
- (HELP @copyfiles-help)
- (OPTIONAL <force>)
- (ALL)
- (INFOS)
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; Copy_File (Name)
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_CopyFile #Dummy
-
- (if (<> (exists (TACKON #ArchiveDir #Dummy) (noreq)) 0)
- (
- (COPYFILES
- (SOURCE (TACKON #ArchiveDir #Dummy))
- (DEST #ApplicationDir)
- (HELP @copyfiles-help)
- (OPTIONAL <force>)
- (ALL)
- (INFOS)
- )
- )
- ) ;If
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_Update
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_Update
- (if (= (exists #ApplicationDir) 2)
- (message (#App-Update #ApplicationName #ApplicationName #ApplicationName))
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_AskBinary
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_AskBinary
- (set #Dummy (/ (getversion) 65536))
-
- (if (= #Dummy 37) (set #Binary 0))
- (if (= #Dummy 38) (set #Binary 1))
- (if (>= #Dummy 39) (set #Binary 2))
-
- (set #Binary (askchoice
- (prompt (#App-Main #ApplicationName))
- (help (#App-Main-help #ApplicationName))
- (choices
- "OS2.0+"
- "OS2.1+"
- "OS3.0+"
- )
- (default #Binary)
- )
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_CopyBinary
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_CopyBinary #Dummy
-
- (set #BinaryName (SELECT #Binary #Dummy (CAT "Bin/" #Dummy "_OS21") (CAT "Bin/" #Dummy "_OS30")))
- (copyfiles
- (source (tackon #ArchiveDir #BinaryName) (infos))
- (dest #ApplicationDir)
- (newname #Dummy)
- (help @copyfiles-help)
- (optional <force>)
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_KeyFile
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_KeyFile
-
- (SET #Dummy (tackon (tackon #ArchiveDir "Keyfile") #ApplicationKeyfile))
-
- (if (<> (exists #Dummy (noreq)) 0) ((P_CopyDir "KeyFile"))
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_CopyArchiveIcon
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_CopyArchiveIcon
- (COPYFILES
- (SOURCE (CAT (CAT (TACKON #ArchiveDir "/") #ApplicationName) ".info"))
- (DEST (TACKON #ApplicationDir "/"))
- (HELP @copyfiles-help)
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_AskBool
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_AskBool #dummy
- (SET #dummy (ASKBOOL (prompt #dummy)
- (help @askbool-help)
- (default 1)
- )
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_Rename
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_Rename #Dummy #Dummy2
- (if (= (exists (TACKON #ApplicationDir #Dummy)) 2)
- (rename (TACKON #ApplicationDir #Dummy) (TACKON #ApplicationDir #Dummy2))
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_RealRename
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_RealRename #Dummy #Dummy2
- (Set #Dummy (TACKON #ApplicationDir #Dummy))
- (Set #Dummy2 (TACKON #ApplicationDir #Dummy2))
- (set #Dummy (CAT "rename " #Dummy " " #Dummy2))
- (run #Dummy)
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; MAIN
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (P_Requirements)
- (message (#App-installmsg #ApplicationName #ApplicationName #ApplicationName #ApplicationName))
- (SET #InstallerMode (P_DeInstall #ApplicationName))
- (welcome)
- ;-----------------------------------------------
- (IF (= #InstallerMode "0")
- (
- ;-----------------------------------------------
- (SET #ApplicationDir (P_GetApplicationDir))
-
- (COMPLETE 1)
- (P_Update)
- (SET #Binary (P_AskBinary))
- (COMPLETE 2)
- (SET #Language (P_AskCatalogs #Language))
- (COMPLETE 3)
- (SET #Documents (P_AskDocs #Documents))
- (COMPLETE 4)
-
- ;***** Delete old Data and Prefs
- (DELETE (TACKON #ApplicationDir "ColorSets") (ALL))
- (DELETE (TACKON #ApplicationDir "ColorSets.info"))
- (DELETE (TACKON #ApplicationDir "GraphicSets/TimoHegemann/Diggers"))
- (DELETE (TACKON #ApplicationDir "GraphicSets/TimoHegemann/Diggers.info"))
- (DELETE (TACKON #ApplicationDir "GraphicSets/TimoHegemann/Diggers64"))
- (DELETE (TACKON #ApplicationDir "GraphicSets/TimoHegemann/Diggers64.info"))
-
- (MAKEDIR #ApplicationDir (INFOS))
- (MAKEDIR (TACKON #ApplicationDir "Prefs") (INFOS))
- (MAKEDIR (TACKON #ApplicationDir "GraphicSets/User") (INFOS))
- (MAKEDIR (TACKON #ApplicationDir "SampleSets/User") (INFOS))
- (MAKEDIR (TACKON #ApplicationDir "CharacterSets/User") (INFOS))
- (MAKEDIR (TACKON #ApplicationDir "MusicSets/User") (INFOS))
- (MAKEDIR (TACKON #ApplicationDir "Games/User") (INFOS))
- (MAKEDIR (TACKON #ApplicationDir "Caves/User") (INFOS))
-
- (COMPLETE 10)
- (P_CopyDir "Games")
- (COMPLETE 20)
- (P_CopyDir "Caves")
- (COMPLETE 35)
- (P_CopyDir "Title")
- (P_CopyDir "Solves")
- (COMPLETE 45)
- (P_CopyDir "Scores")
- (COMPLETE 55)
- (P_CopyDir "SampleSets")
- (COMPLETE 65)
- (P_CopyDir "MusicSets")
- (COMPLETE 75)
- (P_CopyDir "GraphicSets")
- (COMPLETE 85)
- (P_CopyDir "CharacterSets")
- (COMPLETE 97)
- (P_CopyBinary #ApplicationName)
- (P_CopyFile (CAT #ApplicationName ".info"))
- (P_CopyCatalogs #Language)
- (P_CopyDocs #Documents)
-
- (P_CopyArchiveIcon)
- (P_CopyFile "Docs.info")
- (P_CopyFile "GraphicSets.info")
- (P_CopyFile "CharacterSets.info")
- (P_CopyFile "SampleSets.info")
- (P_CopyFile "MusicSets.info")
- (P_CopyFile "WARNING!!!")
- (P_CopyFile "WARNUNG!!!")
- (COMPLETE 99)
- (P_CopyDir "RegTool")
- (P_CopyFile "RegTool.info")
- (P_Keyfile)
- ;--- CleanUp
- (DELETE (TACKON #ApplicationDir "Title.info"))
- (DELETE (TACKON #ApplicationDir "Prefs.info"))
- (DELETE (TACKON #ApplicationDir "Games.info"))
- (DELETE (TACKON #ApplicationDir "Caves.info"))
- (DELETE (TACKON #ApplicationDir "Solves.info"))
- (DELETE (TACKON #ApplicationDir "Scores.info"))
- (DELETE (TACKON #ApplicationDir "KeyFile.info"))
- (DELETE (TACKON #ApplicationDir "Install.info"))
- (DELETE (TACKON #ApplicationDir "Catalogs.info"))
- (run "avail Flush")
- (COMPLETE 100)
- (message (#App-exit #ApplicationName #ApplicationName #ApplicationDir))
- (exit (QUIET))
- ;-----------------------------------------------
- )) ;IF #InstallerMode = 0
- ;----------- Deinstallation -------------------
- (IF (= #InstallerMode "1") (
-
- (SET #ApplicationDir (P_GetDeInstallDir))
-
- (COMPLETE 30)
- (COMPLETE 80)
- (DELETE #ApplicationDir (optional FORCE) (ALL))
- (DELETE (Cat #ApplicationDir ".info"))
- (COMPLETE 100)
-
- (Message (#Deinstall-Done #ApplicationName))
- (exit (QUIET))
- ;-----------------------------------------------
- )) ;IF #InstallerMode = 1
- ;-----------------------------------------------
-
-